[小ネタ] EclipseのEGitでタグを利用する場合の注意
またとんでもないEclipseの小ネタです
EclipseのGitプラグインでEGitを利用している方は多いかと思います。GitのCommitに対し、タグを利用したところ、EGit経由だとうまく適用されなかったので、こちらに備忘録としてメモしておきます
環境
OS : Windows 7 64bit
IDE : Eclipse Kepler (Version 4.3.1.v20130911-1000)
EGit : EGit (Version 3.0.3.201309161630-r)
Git : version 1.8.1.msysgit.1
タグを作る
EGitのタグはかなり深い階層の場所にメニューがあります
- プロジェクト上でEGitのメニューを開きます
- Advancedを選択します
- Tagをクリックします
タグを作成します
Advanced以下を展開すると、どのCommitに対してタグをつけるかを選択することができます。ハッシュ値+コメントを参考にタグをつけたいCommitを選択します
OKを押すと、タグが作成されます
RemoteにタグをPushする
いつも通りPushします
おや?更新されていないような気がします。githubの方で確認してみます
どうやらEGitから通常のPushだと、タグは反映されないようです
コマンドでタグをRemoteへ転送する
EGitではそれっぽい動作の設定が見当たらなかったので、gitコマンドで送信します。
- プロジェクトディレクトリ配下へ移動します
- git bashを実行します
- コマンドを実行します
コマンドは以下の通り。まずはタグを確認します
komuro.hiraku@***** /D/dev/git/AndroidTutorials/CustomTimepicker (master) $ git tag experiment_tag_20131113
タグをRemoteにPushします
komuro.hiraku@***** /D/dev/git/AndroidTutorials/CustomTimepicker (master) $ git push origin --tags Enter passphrase for key '/c/Users/komuro.hiraku/.ssh/id_rsa': Counting objects: 1, done. Writing objects: 100% (1/1), 202 bytes, done. Total 1 (delta 0), reused 0 (delta 0) To git@github.com:com4dc/AndroidTutorials.git * [new tag] experiment_tag_20131113 -> experiment_tag_20131113
反映されたようです。確認してみましょう
ありました。これで全てのタグをRemoteへPushすることができました。お疲れ様でした
まとめ
EGitを使ってる場合は、そのままではタグが反映されないようなので注意しましょう。意外とコマンドだけの方が楽なのかもしれません。変更点の比較やIgnoreの設定等は大変楽なので、それはそれでGUIツールは便利なのですが。